Non-volatile data storage devices, such as flash solid state drive (SSD) memory devices or removable storage cards, have allowed for increased portability of data and software applications. Flash memory devices can enhance data storage density by storing multiple bits in each flash memory cell. For example, Multi-Level Cell (MLC) flash memory devices provide increased storage density by storing 2 bits per cell, 3 bits per cell, 4 bits per cell, or more. Although increasing the number of bits per cell and reducing device feature dimensions may increase a storage density of a memory device, a bit error rate (BER) of data stored at the memory device may also increase.
Data written to a non-volatile memory device may be verified after programming the data into a group of storage elements, such as an erase block of a flash memory, using a post-write read operation or “enhanced” post-write read (EPWR) operation that reads the data from the group of storage elements and performs an error check on the read data. If the BER of the freshly-written data that is read from the group of storage elements exceeds an allowable amount, the group of storage elements may be marked for non-use, such as by being added to a “bad blocks list,” and the data may be re-written to another group of storage elements for storage. However, because some of the errors may be due to temporary temperature effects on the storage elements rather than due to physical defects or device wear, a group of storage elements may be prematurely removed from use, resulting in a reduced capacity and reduced useful life of the data storage device.